// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import axios from 'axios'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import router from './router';
import layer from 'vue-layer'

Vue.use(ElementUI);

Vue.prototype.$layer = layer(Vue);
Vue.config.productionTip = false;

var _token = sessionStorage.getItem('user');
//路由拦截
router.beforeEach((to,from,next) => {
    // 这里的meta就是我们刚刚在路由里面配置的meta
    if(to.meta.requireAuth){
        // 不需要登录的，可以继续访问
        next()
    }else {
        // 下面这个判断是自行实现到底是否有没有登录
        if (_token){
            // 登录就继续
            next();
        }else {
            // 没有登录跳转到登录页面，登录成功之后再返回到之前请求的页面
            next({
                path : '/login',
                query : {redirect : to.fullPath}
            })
        }
    }
});


//设置axios默认请求头
if (_token) {
    axios.defaults.headers['token'] = JSON.parse(_token).remember_token;
}

/* eslint-disable no-new */
new Vue({
    el: '#app',
    router,
    render: h => h(App),
    axios
});